RFC2047 (Message Header Extensions for Non-ASCII Text) specifies how non-ASCII text in headers are to be encoded. This is actually rather complicated, so a number of variables are necessary to tweak what this library does.
The following variables are tweakable:
rfc2047-header-encoding-alistThe keys can either be header regexps, or
t.
The values can be nil, in which case the
header(s) in question won't be encoded, mime,
which means that they will be encoded, or
address-mime, which means the header(s) will be
encoded carefully assuming they contain addresses.
rfc2047-charset-encoding-alistQ (a
Quoted-Printable-like encoding) and B (base64).
This alist specifies which charset should use which
encoding.rfc2047-encode-function-alistQ, B and nil.rfc2047-encoded-word-regexprfc2047-encoded-word-regexp-looserfc2047-encoded-word-regexp is made
loose.rfc2047-encode-encoded-wordsrfc2047-encoded-word-regexp is used
to look for such words.rfc2047-allow-irregular-q-encoded-wordsnil,
rfc2047-encoded-word-regexp-loose is used instead
of rfc2047-encoded-word-regexp to look for encoded
words.Those were the variables, and these are this functions:
rfc2047-narrow-to-fieldrfc2047-encode-message-headerrfc2047-header-encoding-alist.rfc2047-encode-regionrfc2047-encode-stringrfc2047-decode-regionrfc2047-decode-stringrfc2047-encode-parameterrfc2231-encode-string function, that is the
standard but many mailers don't support it. See rfc2231.